Methods and systems for beacon-based management of shared resources

ABSTRACT

Embodiments of the present disclosure can be used to monitor, access, and utilize resources available at workspaces effectively using location-aware devices. Methods and systems disclosed herein integrate location signals received from beacons and other indoor positioning systems for better management of shared resources, such as conference rooms, audiovisual equipment, and other equipment, and address dynamic changes to the availability or non-availability of these resources based on data from location-aware devices and beacons.

CROSS REFERENCES TO RELATED APPLICATION

This application is a continuation of co-pending U.S. patent applicationSer. No. 15/372,118, filed Dec. 7, 2016, entitled “METHODS AND SYSTEMSFOR BEACON-BASED MANAGEMENT OF SHARED RESOURCES,” which claims priorityto U.S. Provisional Patent Application Ser. No. 62/265,777, filed onDec. 10, 2015, which are hereby incorporated by reference in theirentirety.

FIELD OF DISCLOSURE

The present application relates generally to systems, methods, and otherembodiments for managing resources using wireless transmitters.

BACKGROUND

Efficient and effective management of shared resources, such as officerooms, conference rooms, audiovisual equipment, and personnel resourcesis a complex logistic problem, plagued by several issues, including butnot limited to cancellations, double bookings, insufficient resources,over-utilization of certain spaces and technologies, andunder-utilization of other spaces and equipment. Dynamic booking,changes to existing reservations, and cancellations are not possiblewithout involving additional personnel or time to search for availableconference rooms, or appropriate equipment, or other resources likedrink and food services.

Beacons are small, battery-friendly devices that send out low-voltagesignals, such as Bluetooth Low-Energy (BLE), for a programmable distancebetween about a few cm to 40-50 m. In addition, some smartphones can actas beacons. The frequency of sending the signal can also beprogrammable; for example, a signal can be sent every 100-400milliseconds. Beacons can be placed strategically indoors or outdoors toperform many actions. There is a need to integrate the beacon technologyand other indoor positioning systems for better management of sharedresources and address dynamic changes to the availability ornon-availability of resources based on data from user-devices andbeacons.

SUMMARY

The systems and methods disclosed herein attempt to address theabove-mentioned shortcomings in the art and provide a variety of otherbenefits. The systems and methods described herein can create, maintain,transmit, and utilize data from user devices and beacons in order tosolve the aforementioned problem by allowing one or a plurality ofbeacons to transmit information at different ranges to provide moregranular location information.

In an embodiment, a method comprises receiving, by a server, from alocation-aware device a request to identify a plurality of resources.The method comprises receiving, by the server, a device identifier andlocation signals from the location-aware device, the location signalsbeing associated to a current location associated with thelocation-aware device and received from a plurality of beacons. Themethod comprises determining, by the server, the current locationassociated with the location-aware device based at least on one of thelocation signals and the device identifier. The method comprisesquerying, by the server, a database to identify the plurality ofresources responsive to the request and corresponding to the currentlocation associated with the location-aware device, wherein the databaseis configured to store one or more records of the plurality of resourcesand one or more records of a plurality of location-aware devices. Themethod comprises generating, by the server, a notification configured todisplay the plurality of resources responsive to the request. The methodfurther comprises transmitting, by the server, the notification to thelocation-aware device.

In another embodiment, a computer system comprises a server, which isconfigured to receive from a location-aware device a request to identifya plurality of resources. The server is configured to receive a deviceidentifier and location signals from the location-aware device, thelocation signals being associated to a current location associated withthe location-aware device and received from a plurality of beacons. Theserver is configured to determine the current location associated withthe location-aware device based at least on one of the location signalsand the device identifier. The server is configured to query a databaseto identify the plurality of resources responsive to the request andcorresponding to the current location associated with the location-awaredevice, wherein the database is configured to store one or more recordsof the plurality of resources and one or more records of a plurality oflocation-aware devices. The server is configured to generate anotification configured to display the plurality of resources responsiveto the request. The server is further configured to transmit thenotification to the location-aware device.

Additional features and advantages of an embodiment will be set forth inthe description which follows, and in part will be apparent from thedescription. The objectives and other advantages of the invention willbe realized and attained by the structure particularly pointed out inthe exemplary embodiments in the written description and claims hereofas well as the appended drawings. It is to be understood that both theforegoing general description and the following detailed description areexemplary and explanatory, and are intended to provide furtherexplanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure can be better understood by referring to thefollowing figures. The components in the figures are not necessarily toscale. The emphasis is instead placed upon illustrating the principlesof the disclosure. In the figures, reference numerals designatecorresponding parts throughout the different views.

FIG. 1 illustrates an exemplary embodiment, where the beacons areassociated to individual conference rooms.

FIG. 2 illustrates an exemplary embodiment, where the beacons areutilized to generate micro-fenced locations.

FIG. 3 is a block diagram illustrating a system containing a resourcemanagement server, according to an embodiment.

DETAILED DESCRIPTION

Reference will now be made in detail to the preferred embodiments,examples of which are illustrated in the accompanying drawings. Theembodiments described herein are intended to be exemplary. One skilledin the art recognizes that numerous alternative components andembodiments may be substituted for the particular examples describedherein and still fall within the scope of the invention.

The term “beacon” as used herein refers to any device configured totransmit a data packet, which is used by a receiving device to identifythe transmitting device and compute the relative distance between thetransmitting device and the receiving device. Beacons can be physicaldevices or virtual beacons. Beacons transmit small packets of data.Currently, beacons repeatedly transmit data packets in set intervals.There are several types of beacons and associated protocols available inthe market such as iBeacon system (implemented by Apple®), AltBeacon(provided by Radius Networks), and EddyStone® (from Google®). TheiBeacons and AltBeacons broadcast a data packet consisting mainly offollowing pieces of information—a Universally Unique Identifier (UUID),a major number, a minor number, and a transmission power level known asthe “Broadcasting Power.” These formats require external databases togive meaning to the beacon data packets. Receiving devices canapproximate distance from the beacon by comparing the Broadcasting Powerto the strength of the signal as received, known as the Received SignalStrength Indicator (RSSI). As these devices typically transmit thatpacket over and over again, this type of transmission defines theadvertising functionality of beacons. These data packets are recognizedonly by special apps on the mobile phone of the users. Beaconssupporting the Eddystone format broadcast three different packets: aunique ID number, a URL address, and telemetrics based on sensors. Theydon't require an external database; instead they use web links to eitherlink to data directly and could function via a two-way communicationmethod. The Eddystone-URL frame type broadcasts information that can beused by a phone even without a specialized application. Virtual beaconsmay not require specialized devices and may use existing indoorpositioning systems and the user devices to deliver location-basedinformation. Beacons can be configured to broadcast sensor data such astemperature and battery level, or even data gathered from other sensorsin the room such as motion-detectors.

The term “device identifier” as used herein refers to a distinctivecombination of numbers or characters associated with a particularcomputing device for the purpose of uniquely identifying that computingdevice to other devices and systems that are communicatively coupled toit.

The term “de-identification” as used herein refers to the process ofremoving personal identifiers (i.e. phone numbers, names etc.) tomitigate privacy risks to individuals. Data that has gone through thede-identification process and cannot reasonably be connected orassociated to a user or a specific computer or mobile device.

The term “location-aware devices” as used herein refers to computingdevices that can passively or actively determine their location.Location signal data can be accessed and passed to the computing devicein different ways. Location signals that can be detected bylocation-aware devices can be outdoor signals, indoor signals, orcombinations thereof. Outdoor signals can be GPS, Wi-Fi, IP address,cell-tower triangulation, and user-reported location. Indoor signals canbe A-GPS, indoor positioning system (IPS), and Wi-Fi triangulation.

The term “indoor positioning systems” as used herein refers to anysystem that attempts to provide an accurate position of a computingdevice inside of a covered structure. In addition to using locationinformation from a beacon, certain embodiments can use triangulation toassess more accurately the location of a receiving device. For instance,the receiving device may receive signals from more than once source orof more than one type, e.g., Wi-Fi, BLE, and GPS. By relying on morethan once source, the reliability and accuracy of the systems andmethods disclosed herein are enhanced.

The term “micro-fenced location” as used herein refers to a virtualfenced location defined by indoor positioning systems. The boundaries ofa micro-fenced location can be set by a user or by an administrator ofthe resource management system.

Certain embodiments of the system include a resource management server,a resource management database, a location-aware device, and a beacon.The resource management server is associated with location-awaredevices. These devices may utilize a mobile application program tocommunicate with the resource management server, such as transmittingperiodic location updates and receiving information based on locationupdates and queries. Exemplary embodiments of the disclosed methodsinclude a query from a location-aware user device regarding availabilityof resources. This method then includes the steps of receiving by aresource management server certain location identifiers along with adevice or user identifier from the location-aware user device. Theselocation identifiers are determined based on information from beaconsnear the user device. In response to receipt of the identifiers from theuser device, the resource management server queries a resourcemanagement database to retrieve information associated with events,people, and resources available based on the query. This information isthen presented to the location-aware device through a user interface inpredetermined or user-selected formats.

Exemplary embodiments of the disclosed methods include a query from anadministrator of a facility regarding the utilization of the resources,such as the nature, capacity, and duration of past, current, and futureevents scheduled in the various rooms, the utilization of audiovisualand other equipment, the requests for beverage, food, and other supportservices, the requests for IT infrastructure assistance.

In an embodiment, beacons are placed in specific areas of indoor space,such as conference rooms, hallways, kitchens, offices, and other areasin a workspace. FIG. 1 is a block diagram of various components of aresource management system in accordance with an exemplary embodiment.Here, each one of the rooms 110, 111, and 112 has a beacon 101, 102, 103associated with it, while room 113 has two beacons 104 and 105associated with it. Each beacon can be configured such that the locationsignal range encompasses approximately the boundaries of the room. Forexample, beacon 101 associated with room 110 can have a 3 ft locationsignal range, beacon 102 associated with room 111 can have a 10 ftlocation signal range, and beacon 103 associated with room 112 can havea 20 ft. location signal range. Beacons 104 and 105 associated with room113 can be short-range transmission beacons instead of long-rangebeacons, in order to avoid across-the-wall transmission issues. When alocation-aware device 114 is within the location signal range of any oneof the beacons, such as beacon 102 associated with room 111, then areceiver in the location-aware device 114 detects the location signalsfrom beacon 102 and communicates them to an application program. Forexample, beacon 102 broadcasts the following data packet UUID 109 876543 210 23 Major: 31 Minor: 4. The location-aware device 114 receivesthis data packet and determines that it is from beacon 102 situated inroom 111 on a certain floor in a specific building of company X, andtransmits this information along with a device identifier or a useridentifier associated with the location-aware device 114 to the resourcemanagement server via the application program. The resource managementserver then queries (e.g., send a request) an associated resourcemanagement database to retrieve information associated with events,people, and resources available at room 111. This information is thenpresented back to the user of the location-aware device 114. Theresource management server may receive the request, and query thedatabase for an answer. For example, the request received may inquireabout the schedule of a conference room and the resource managementserver may determine the identity of the user associated with thelocation-aware device, then query the database for a schedule associatedwith the conference room, and upon determine that there is vacancy,transmit a notification to the location-aware device 114 that theconference room is available. In another example, the informationpresented back to the location-aware device 114 can be room 111 isavailable until noon, can seat 6 people, and has no audiovisualequipment. The resource management server may generate a notificationconfigured to display the information (e.g., response to the request bythe user associated with the location-aware device 114) and transmit thenotification to the location-aware device 114. The notification can alsobe configured to present options to the user, such as options to reserveroom 111 until noon, invite other employees to join the user at room111, request audiovisual equipment for room 111, or indicate the needfor additional assistance like a food or beverage service, transcriptionservices, or IT help.

As another example, when a location-aware device 115 is within thelocation signal range of any one of the beacons, such as beacon 103associated with room 112 and beacon 105 associated with room 113, then areceiver in the location-aware device 115 detects the locationinformation (e.g., signals received from beacons 103 and 105) andcommunicates them to an application program. For example, beacon 103broadcasts the following data packet UUID 129 866 553 220 23 Major: 30Minor: 6, while beacon 105 broadcasts the following data packet UUID 199866 533 200 22 Major: 35 Minor: 8. The location-aware device 115receives these two data packets and determines that they are frombeacons 103 and 105 situated in room 112 and 113 on a certain floor in aspecific building of company X, and transmits this information alongwith a device identifier or a user identifier associated with thelocation-aware device 115 to the resource management server via theapplication program. The resource management server then queries anassociated resource management database to retrieve informationassociated with events, people, and resources available at rooms 112 and113. The resource management server may generate and transmit anotification configured to display/present the results. For example, thenotification transmitted to the location-aware device 115 can includethe details of meetings in rooms 112 and 113 such as duration, content,private or public nature of the meetings. The notification transmittedto the location-aware device 115 can also present details like names,titles, and departments associated with users of devices 116 and 117,then also present options to the user, such as options to join themeeting in room 112, invite other employees to join the users at room112, or view the presentations designated for viewing in room 112. Withregards to room 113, users 118, 119, and 120, or an administrator candesignate their meeting as private, so following the query from theresource management server, no details regarding the meeting in room 113are provided to the location-aware device 115, except the unavailabilityof the room 113.

As another example, a resource management program supported by theresource management server can query the associated resource managementdatabase on a periodic basis to determine if there are any beacons whosesignals are not picked up by any location-aware devices. In thatinstance, the room associated with that beacon can be made available ona shared calendar for the users, such as employees of Company X. Asshown in FIG. 1, after the user of location-aware device 121 leaves room110, there will be no device transmitting the signals received frombeacon 101. The resource management program can respond to this lack ofany device transmitting signals from beacon 101 or lack of appropriatelocation signal transmissions from location-aware device 121, byproviding instructions to an electrical control system to turn off thelights and audiovisual equipment associated with room 110, or alsoprovide notifications to a support team to clean or prepare the room foranother meeting.

FIG. 1 also illustrates another exemplary embodiment, where a useraccesses the resource management server using his device 122 and submitsa request for an empty conference room. The resource management serverthen presents the results of the query on an electronic graphical userinterface on the device 122, such as the time duration of availabilityof rooms 110 and 111, maximum occupancy, and other resources such asaudiovisual equipment, IT infrastructure, and tools associated with therooms. The user can also request view of status of all the conferencerooms on the floor, meetings available for public attendance, and otherinformation associated to the resources in any format or combination asrequired.

FIG. 2 is a block diagram of various components of a resource managementsystem in accordance with another exemplary embodiment. Here, thebeacons 201, 202, and 203 are placed in specific areas of indoor space,such as conference rooms, hallways, kitchens, offices, and other areasin a workspace, but the beacons are not associated with each of therooms 210, 211, 212, and 213. Instead, information associated to adiagrammatic representation of the physical floor plan is provided tothe resource management database. A dataset containing strength andcomposition of the location signals from various beacons throughout theentire floor is created and overlaid on the diagrammatic representationof the physical floor plan. Thus, granular portions of the physicalfloor plan are associated to strength and composition of the locationsignals from various beacons to create several micro-fenced locations.In this embodiment, individual beacons need not be moved regularly dueto floor plan changes or in companies that have flexible, adaptableworkspaces. When there is change in the physical floor plan, then asimple upload of the diagrammatic representation of the floor plan willbe sufficient to recalibrate the resource management program to adapt tothe new floor plan and create new micro-fenced locations. Using beaconsas shown in FIG. 2 results in a dynamic resource availability map withvirtual fenced locations. In an embodiment, maps of physical resources,such as conference rooms, hallways, kitchens, offices, and other areasin a workspace, can also be mapped as micro-fenced locations. At a givenpoint, a mobile application on a user device may detect differentlocation signals with certain signal strengths. This set of locationsignals and their associated signal strengths represents a data pointthat is unique to that physical position. In other embodiments, theusers can request the desired resources, navigate the hallways to thephysical locations, and participate in events with the use of theirdevices.

For example, as illustrated in FIG. 2, a limited dataset containingstrength and composition of the location signals from the beacons 201,202, and 203, and corresponding to the room 204 defines the micro-fencedlocation 205. When a location-aware device 206 is outside the room 204,the receiver in the location-aware device 206 detects the locationsignals from the three beacons 201, 202, and 203. The device 206communicates them along with a device identifier or a user identifierassociated with the location-aware device 114 to the resource managementserver via an application program. The unique combination of strengthand composition of the location signals from device 206 is used todetermine that the device is within the micro-fenced location 205. Theresource management server then queries an associated resourcemanagement database to retrieve information associated with events,people, and resources available at the micro-fenced location 205. Thisinformation is then presented back to the user of the location-awaredevice 206. For example, the information presented back to thelocation-aware device 206 can be room 204 is available until noon, canseat 6 people, and has no audiovisual equipment. The resource managementserver may generate and transmit a notification configured todisplay/present the results. For example, the notification transmittedto the location-aware device 115 may be configured to present options tothe user, such as options to reserve room 204 until noon, invite otheremployees to join the user at room 204, request audiovisual equipmentfor room 204, or indicate the need for additional assistance like a foodor beverage service, transcription services, or IT help.

Similarly, in FIG. 2, the physical room 207 can correspond tomicro-fenced location 208. The resource management program supported bythe resource management server can query the associated resourcemanagement database on a periodic basis to determine if there are anymicro-fenced locations whose corresponding datasets are not transmittedby any location-aware devices. In that instance, the room associatedwith that micro-fenced location can be made available on a sharedcalendar for the users, such as employees of Company X. As shown in FIG.2, after the user of location-aware device 209 leaves room 207, therewill be no device transmitting location signal datasets corresponding tothe micro-fenced location 208. The resource management program canrespond to this lack of any device transmitting location signal datasetscorresponding to the micro-fenced location 208 or the reception oflocation signal datasets corresponding to the micro-fenced location 210from location-aware device 209, by providing instructions to anelectrical control system to turn off the lights and audiovisualequipment associated with room 207, or also provide notifications to asupport team to clean or prepare the room for another meeting, or send afeedback request or other follow-up notification to location-awaredevice 209.

As another example, when a location-aware device 211 is in themicro-fenced location 212, then a receiver in the location-aware device211 detects the location signals from the three beacons 201, 202, and203. The device 211 communicates them along with a device identifier ora user identifier associated with the location-aware device 211 to theresource management server via an application program. The uniquecombination of strength and composition of the location signals fromdevice 211 is used (by the resource management server) to determine thatthe device is within the micro-fenced location 212. The resourcemanagement server then queries an associated resource managementdatabase to retrieve information associated with events, people, andresources available at the micro-fenced location 212. This informationis then presented back to the user of the location-aware device 211. Forexample, the information presented back to the location-aware device 211can include the details of meetings in rooms 213 and 214 such asduration, content, private or public nature of the meetings. Thenotification transmitted to the location-aware device 211 can also beconfigured to present details like names, titles, and departmentsassociated with users of devices 215 and 216, then also present optionsto the user, such as options to join the meeting in room 214, inviteother employees to join the users at room 214, or view the presentationsdesignated for viewing in room 214. With regards to room 213, users 217,218, and 219, or an administrator can designate their meeting asprivate, so following the query from the resource management server, nodetails regarding the meeting in room 213 are provided to thelocation-aware device 211, except the unavailability of the room 213.The rooms 213 and 214 can be described in the resource management serveras the physical locations encompassed by micro-fenced locations 220 and221 respectively.

FIG. 2 also illustrates another exemplary embodiment, where a useraccesses the resource management server using his device 222 and submitsa request for an empty conference room. The resource management serverthen presents the results of the query on an electronic interface on thedevice 222, such as the time duration of availability of rooms 204 and207, maximum occupancy, and other resources such as audiovisualequipment, IT infrastructure, and tools associated with the rooms. Theuser can also request view of status of all the conference rooms on thefloor, meetings available for public attendance, and other informationassociated to the resources in any format or combination as required. Inother instances, transmission of locations signals corresponding tomicro-fenced locations 223 and 212 to the resource management server canresult in the user interfaces on devices 222 and 211 being configured topresent a variety of other options, such as an option to access a mapshowing the location of the various rooms and the route to get to thedesired room.

Certain embodiments include a system for communicating information froma resource management database to a location-aware device. FIG. 3 is ablock diagram illustrating a system 300 containing a resource managementserver, according to an embodiment. A plurality of beacons 301, 302, and303 transmit a plurality of location signals that are received by alocation-aware device 304. The device 304 then transmits a deviceidentifier and the plurality of location signals from the plurality ofbeacons 301, 302, and 303 via a network 305 to one or more serversconstituting the resource management server 306. The system includes aresource management database 307 hosted by or communicatively coupled tothe resource management server 306. The resource management database 307is configured to store one or more records of one or more resources, oneor more records of one or more location-aware devices, and combinationsthereof.

The location-aware device 304 can be any mobile computing devices, e.g.,smartphone or tablets, which can receive a wireless signal from one ormore transmitters of location signals. When the location-aware device304 receives the location signals, it can process it using one or moremobile applications in communication with one or more serversconstituting the resource management server 306. Mobile applications ofthe resource management system can be implemented as software that canbe downloaded and installed on the location-aware device 304. Examplesof mobile application are GUI applications that may be available at,downloaded, and installed from a public software app stores or digitalapplication distribution platforms, such as Apple iTunes®, Google Play®Store and Amazon.Com®, among others. In these embodiments, mobileapplication includes the following exemplary functions: allowing theuser to create and manage a user account within the resource managementsystem 300; allowing the user to see the available resources associatedwith particular physical locations or micro-fenced locations, allowingthe user to receive communications such as calendar notifications,e-mails or text messages from the resource management system 300; andallowing the user to see updates or modifications or other statusreports or options for further action and instructions from the resourcemanagement system 300.

The mobile application can have a landing graphical user interface or anintroductory interface where the user is enters his credentials to theresource management system 300. Upon entering proper credentials, theuser is presented (by the resource management server 300) with graphicaluser interfaces that present, collect, and communicate information toand from the resource management system 300. One or more user-side andserver-side technologies or combinations thereof can be implemented toensure that the graphical user interfaces are dynamically generatedbased on the updates to the records in the resource management database307. Content for personalized web-based or an app-based interfaces canbe dynamically generated on user devices, based on updates to theresource management database 307 and plurality of inputs from thelocation aware devices. The information presented to the location-awaredevices can be subject to de-identification, depending on the securitylevels or the “need-to-know” level associated with various users of theresource management system 300. Data communicated between the variousdevices, servers, and other components of the system is encrypted,stored, decrypted, and distributed using one or more firewalls,antivirus and ant phishing software, file encryption protocols, andother encryption software.

In some embodiments, the UUIDs or unique identifiers of the beacons 301,302, and 303 must be programmed and associated with particular locationswhere they are installed. The beacons 301, 302, and 303 continuouslybroadcast information, for example in the form of data strings, at apre-determined interval, like a heartbeat of data broadcasts, which arethen captured by one or more applications on the location-aware devices.The data fields in these broadcasted data strings could include anidentifier of an individual beacon, location of the beacon in the officespace, time of day, and any information designed for consumption by thelocation-aware devices.

A resource management server 306 may be any computing device, includingone or more servers, comprising non-transitory machine-readable storagemedia, processors, and software modules capable of performing varioustasks and processes described herein. In an embodiment, an applicationcan be downloaded to a location-aware device that is able to communicatewith the server. The application can be created and maintained by sameparty who maintains the resource management server 306. In certainembodiments, component features of the server may reside on separatephysical devices.

The resource management database 307 is a body of information associatedwith the resources in the workspace or facility or company, andorganized as records. This database can comprise information regardingindividual resources such as available user devices, presentations froma particular user device, user preferences for resources, and sharedresources such as rooms, equipment, and available personnel, onlinecalendars. Information in these databases can be stored or retrieveddynamically using appropriate storage management software. For example,a database in some embodiments can be a database containing informationregarding the beacons 301, 302, and 303, their locations, onlinecalendars associated to them, or any information for the user. Thedatabase can be part of the server, however, in some embodiments thedatabase may reside on a different computing device than the server(i.e., a distributed computing environment).

The system includes a network, which is any common communicationarchitecture that facilitates communication between computing devices.For example, the computing devices communicating over the network wouldbe the one or more receiving devices, one or more beacons 301, 302, and303, a network server, and one or more databases. One having ordinaryskill in the art would appreciate that the network may be the Internet,a private intranet, or some hybrid of the two. The network may becomprised of any combination of devices and protocols capable offacilitating communication between computing devices. Non-limitingexamples of devices comprising the network may include routers,switches, hubs, firewalls, proxy servers, telecommunications trunks, andthe like. Non-limiting examples of protocols employed by the network mayinclude TCP/IP, Wi-Fi, Bluetooth®, 3G, Wi-Max, and the like. Wirelesscommunication between one or more location-aware devices and one or moretransmitters may be performed with a relatively short-range wirelesscommunication protocol such as Wi-Fi, Bluetooth, high frequency systems,or other relatively localized wireless communication protocols.

Beacons 301, 302, and 303 may be any computing or other electronicdevice comprising a processor and a wireless interface capable oftransmitting signals to a receiving device. The signals may containbinary data, and the binary data may represent various types of dataand/or information for the location-aware device 304 to consume andimplement. The components of the location-aware device 304 receiving thesignals, may translate the signals into useful binary data triggeringvarious tasks and process according to the application executed by thelocation-aware device 304. The beacons 301, 302, and 303 may implementany suitable components for wirelessly communicating with thelocation-aware device 304, or other receivers. The technologicalcomponents may include wireless networking hardware and the relatedprotocols, such as a Bluetooth low energy (BLE) interface chip and theBluetooth wireless communication protocols.

Although FIG. 3 shows only a limited number of beacons 301, 302, and303, it should be appreciated that more transmitters may becommunicatively coupled to one another, over a wired and/or wirelessnetwork of transmitters. That is, locations, such as brick-and-mortaroffice buildings, schools, campuses of multiple buildings, governmentalor administrative buildings, and the like, may implement localizednetworks of beacons to transmit and/or collect data, across a broaderarea. Furthermore, although the exemplary system described in FIG. 3describes stationary beacons 301, 302, and 303, it should also beappreciated that beacons 301, 302, and 303 may be any suitablestationary or mobile devices that are capable of performing the varioustasks and processes described herein. Thus, a collection of beacons 301,302, and 303 can comprise a combination of mobile and stationarydevices. It should also be appreciated that, although FIG. 3 describesbeacons 301, 302, and 303 performing one-way signal transmissions,beacons 301, 302, and 303 may be capable of two-way communications(i.e., collecting data from signals transmitted by receiving devices),and may be capable of a number of functions or execute a variety ofsoftware modules. Non-limiting examples of beacons 301, 302, and 303 mayinclude an iBeacon, AltBeacon, and EddyStone, a wireless router, acellular phone, a tablet, a workstation, or any other suitable computingor other electronic device. The data strings from the beacon cancomprise both constant identifiers that do not change with everybroadcast and dynamic identifiers that change with every broadcast.

The plurality of records can be provided by a partner applicationprogrammable interfaces (API) 308 associated to the resource managementserver 306 configured to process resource records associated with one ormore facilities or workspaces. The APIs 308 can be any RepresentationalState Transfer Application Programming Interface (REST API) thatcontrols and manages one or more APIs. In these embodiments, APIprovides web services to one or more mobile applications installed onthe computing devices. Examples of web services include showing data ona website, uploading large amounts of data that will later be consumedby a mobile app, downloading data to run custom analytics, exportingdata, and the like. APIs are commonly a collection of one or morecomputing protocols and/or routines that indicate a software program'sor software service's functions, and each function's requisite inputs.The APIs may be used to query and fetch data from databases, or passinformation to other services or programs. For example, APIs may be usedto communicate information and instructions to cloud-based servicesregarding the resources associated with particular micro-fencedlocations. APIs may be used to facilitate communications between aplurality of servers underlying web-based or network-based services usedby the users to monitor, access, or manage resources.

Embodiments of the invention present several advantages over existingsystems. The foregoing method descriptions and the process flow diagramsare provided merely as illustrative examples and are not intended torequire or imply that the steps of the various embodiments must beperformed in the order presented. As will be appreciated by one of skillin the art the steps in the foregoing embodiments may be performed inany order. Words such as “then,” “next,” etc.,” are not intended tolimit the order of the steps; these words are simply used to guide thereader through the description of the methods. Although process flowdiagrams may describe the operations as a sequential process, many ofthe operations can be performed in parallel or concurrently. Inaddition, the order of the operations may be re-arranged. A process maycorrespond to a method, a function, a procedure, a subroutine, asubprogram, etc. When a process corresponds to a function, itstermination may correspond to a return of the function to the callingfunction or the main function.

The various illustrative logical blocks, modules, circuits, andalgorithm steps described in connection with the embodiments disclosedherein may be implemented as electronic hardware, computer software, orcombinations of both. To clearly illustrate this interchangeability ofhardware and software, various illustrative components, blocks, modules,circuits, and steps have been described above generally in terms oftheir functionality. Whether such functionality is implemented ashardware or software depends upon the particular application and designconstraints imposed on the overall system. Skilled artisans mayimplement the described functionality in varying ways for eachparticular application, but such implementation decisions should not beinterpreted as causing a departure from the scope of the presentinvention.

Embodiments implemented in computer software may be implemented insoftware, firmware, middleware, microcode, hardware descriptionlanguages, or any combination thereof. A code segment ormachine-executable instructions may represent a procedure, a function, asubprogram, a program, a routine, a subroutine, a module, a softwarepackage, a class, or any combination of instructions, data structures,or program statements. The invention may be practiced with othercomputer system configurations, including hand-held devices,multiprocessor systems, microprocessor-based or programmable consumerelectronics, minicomputers, mainframe computers, and the like. Theinvention may also be practiced in distributed computing environmentswhere tasks are performed by remote processing devices that are linkedthrough a communications network. In a distributed computingenvironment, program modules may be located in both local and remotememory storage devices. A code segment may be coupled to another codesegment or a hardware circuit by passing and/or receiving information,data, arguments, parameters, or memory contents. Information, arguments,parameters, data, etc. may be passed, forwarded, or transmitted via anysuitable means including memory sharing, message passing, token passing,network transmission, etc.

The actual software code or specialized control hardware used toimplement these systems and methods is not limiting of the invention.Thus, the operation and behavior of the systems and methods weredescribed without reference to the specific software code beingunderstood that software and control hardware can be designed toimplement the systems and methods based on the description herein.

When implemented in software, the functions may be stored as one or moreinstructions or code on a non-transitory computer-readable orprocessor-readable storage medium. The steps of a method or algorithmdisclosed herein may be embodied in a processor-executable softwaremodule, which may reside on a computer-readable or processor-readablestorage medium. A non-transitory computer-readable or processor-readablemedia includes both computer storage media and tangible storage mediathat facilitate transfer of a computer program from one place toanother. A non-transitory processor-readable storage media may be anyavailable media that may be accessed by a computer. By way of example,and not limitation, such non-transitory processor-readable media maycomprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage,magnetic disk storage or other magnetic storage devices, or any othertangible storage medium that may be used to store desired program codein the form of instructions or data structures and that may be accessedby a computer or processor. Disk and disc, as used herein, includecompact disc (CD), laser disc, optical disc, digital versatile disc(DVD), floppy disk, and Blu-ray disc where disks usually reproduce datamagnetically, while discs reproduce data optically with lasers.Combinations of the above should also be included within the scope ofcomputer-readable media. Additionally, the operations of a method oralgorithm may reside as one or any combination or set of codes and/orinstructions on a non-transitory processor-readable medium and/orcomputer-readable medium, which may be incorporated into a computerprogram product.

The preceding description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the following claims and theprinciples and novel features disclosed herein. While various aspectsand embodiments have been disclosed, other aspects and embodiments arecontemplated. The various aspects and embodiments disclosed are forpurposes of illustration and are not intended to be limiting, with thetrue scope and spirit being indicated by the following claims.

The invention claimed is:
 1. A server-implemented method comprising:periodically determining, by a server, an availability status associatedwith each of a plurality of resources in response to receiving locationsignals from at least one beacon located within each of the plurality ofresources, whereby when the server does not receive any location signalsassociated with a resource, the server determines that resource to beavailable; receiving, by the server, from a location-aware deviceoperated by a user, a request to identify availability status of atleast one resource of the plurality of resources, wherein the requestcomprises a device identifier associated with the location-aware deviceand at least one location signal detected by the location-aware devicefrom the at least one beacon of the at least one resource; determining,by the server, a current location of the location-aware device based onthe device identifier; determining, by the server, a location of the atleast one resource based on a signal strength and a compositioncomprising a unique identifier of the at least one location signalemitted from the at least one beacon of the at least one resource;querying, by the server, the database to determine the availabilitystatus of the at least one resource corresponding to the currentlocation associated with the location-aware device based on informationassociated with the at least one location signal; displaying, by theserver, the availability status of the at least one resource, and a mapshowing a route between the current location of the location-awaredevice and the location of the at least one resource responsive to therequest on the location-aware device; monitoring, by the server, apresence of the user in the at least one resource based on processing ofsignals transmitted from the location-aware device of the user; and whenthe server determines that the location-aware device has moved out ofthe at least one resource, transmitting, by the server, instructions toan electrical control system to turn off equipment in the at least oneresource.
 2. The server-implemented method of claim 1, furthercomprising determining, by the server, the location data associated witheach of the plurality of resources based at least in part from the oneor more location signals from the at least one beacon located withineach of the plurality of resources.
 3. The server-implemented method ofclaim 1, wherein the location-aware device is configured to detect theat least one location signal from the at least one beacon of the atleast one resource when the location-aware device is within a locationsignal range of the at least one resource.
 4. The server-implementedmethod of claim 1, wherein the plurality of resources comprises aplurality of conference rooms.
 5. The server-implemented method of claim4, wherein the plurality of resources further comprises a conflictschedule associated with the conference room.
 6. The server-implementedmethod of claim 4, wherein the request to identify one or more of aplurality of resources comprises a request to identify a currentavailability of one of the plurality of conference rooms.
 7. Theserver-implemented method of claim 4, wherein the request to identifyone or more of a plurality of resources comprises a request to identifya future availability of one of the plurality of conference rooms. 8.The server-implemented method of claim 4, wherein the plurality ofresources further comprises audiovisual equipment associated with theconference room.
 9. The server-implemented method of claim 4, whereinthe plurality of resources further comprises a maximum occupancyassociated with the conference room.
 10. The server-implemented methodof claim 1, wherein the notification is further configured to display amap associated with the at least one resource responsive to the request,and wherein the notification is further configured to display a routetowards the at least one resource responsive to the request.
 11. Acomputer system comprising: a plurality of beacons where each beaconemits location information; a location-aware device operated by a user;a server communicatively coupled to the plurality of beacons and thelocation-aware device, wherein the server is programmed to executeinstructions to: periodically determine an availability statusassociated with each of a plurality of resources in response toreceiving one or more location signals from at least one beacon locatedwithin each of the plurality of resources, whereby when the server doesnot receive any location signals associated with a resource, the serverdetermines that resource to be available; receive from thelocation-aware device, a request to identify availability status of atleast one resource of the plurality of resources, wherein the requestcomprises a device identifier associated with the location-aware deviceand at least one location signal detected by the location-aware devicefrom the at least one beacon of the at least one resource; determine acurrent location of the location-aware device based on the deviceidentifier; determine a location of the at least one resource based on asignal strength and a composition comprising a unique identifier of theat least one location signal emitted from the at least one beacon of theat least one resource; query the database to determine the availabilitystatus of the at least one resource corresponding to the currentlocation associated with the location-aware device based on informationassociated with the at least one location signal; display theavailability status of the at least one resource, and a map showing aroute between the current location of the location-aware device and thelocation of the at least one resource responsive to the request on thelocation-aware device; monitor a presence of the user in the at leastone resource based on processing of signals transmitted from thelocation-aware device of the user; and when the server determines thatthe location-aware device has moved out of the at least one resource,transmit instructions to an electrical control system to turn offequipment in the at least one resource.
 12. The computer system of claim11, the server is further programmed to execute instructions todetermine the location data associated with each of the plurality ofresources based at least in part from the one or more location signalsfrom the at least one beacon located within each of the plurality ofresources.
 13. The computer system of claim 11, wherein thelocation-aware device is configured to detect the at least one locationsignal from the at least one beacon of the at least one resource whenthe location-aware device is within a location signal range of the atleast one resource.
 14. The computer system of claim 11, wherein theplurality of resources comprises a plurality of conference rooms. 15.The computer system of claim 14, wherein the plurality of resourcesfurther comprises a conflict schedule associated with the conferenceroom.
 16. The computer system of claim 14, wherein the request toidentify one or more of a plurality of resources comprises a request toidentify a current availability of one of the plurality of conferencerooms.
 17. The computer system of claim 14, wherein the request toidentify one or more of a plurality of resources comprises a request toidentify a future availability of one of the plurality of conferencerooms.
 18. The computer system of claim 14, wherein the plurality ofresources further comprises audiovisual equipment associated with theconference room.
 19. The computer system of claim 14, wherein theplurality of resources further comprises a maximum occupancy associatedwith the conference room.
 20. The computer system of claim 11, whereinthe notification is further configured to display a map associated withthe at least one resource responsive to the request, and wherein thenotification is further configured to display a route towards the atleast one resource responsive to the request.